package m202310.d30;

/**
 * @author haocongshun
 * @date 2023/10/30 19:44:16
 */

/**
 * 14. 最长公共前缀
 * <p>
 * 编写一个函数来查找字符串数组中的最长公共前缀。
 * <p>
 * 如果不存在公共前缀，返回空字符串 ""。
 */
public class Q14 {

    public static void main(String[] args) {
        String s = new Q14().longestCommonPrefix(new String[]{"abc", "ab"});
        System.out.println(s);
    }

    public String longestCommonPrefix(String[] strs) {
        char[] chars = strs[0].toCharArray();
        int n = chars.length;
        for (int i = 1; i < strs.length; i++) {
            String str = strs[i];
            for (int i1 = 0; i1 < Math.min(n, str.length()); i1++) {
                if (str.charAt(i1) != chars[i1]) {
                    n = i1;
                    break;
                }
            }
            n = Math.min(n, str.length());
        }
        return new String(chars, 0, n);
    }
}
